home *** CD-ROM | disk | FTP | other *** search
- /*
- /* This is the graal.main script file for Olaf Longhair,
- /* the first ever GRAAL Graphic Adventure. Heavily annotated.
- /*
- /* If there's a statement or command that you wish to know more
- /* about, just put the cursor over the statement or command name and
- /* press the HELP key. (This requires the GRAAL.guide file to be
- /* in the same directory as the script file and the editor...)
- /*
-
-
- /* ===================================================================== */
- /* */
- /* General adventure and player interface set-up comes first... */
- /* */
- /* ===================================================================== */
-
- /* NAME: string
- /*
- /* The name of the adventure
- /*
- NAME: "Olaf Longhair Goes East"
-
- /* VERSION: string
- /*
- /* The version number of the adventure
- /*
- VERSION: Demo 2.0
-
- /* MAX_CACHE: number of files
- /*
- /* This number is the maximum number of files to be
- /* buffered in RAM: of machines with memory to spare.
- /*
- /* A good practice is to set to 0 during development
- /* and to 100 when playing (or testing without altering
- /* too much in the files).
- /*
- /* Normally, the true number of cached files are
- /* calculated according to the available memory - if
- /* you have put together a weird game where your
- /* files average more then 50K, you may want to lower
- /* the cache to just a few files - say 10 or 20. Normally,
- /* 100 should be just fine, though.
- /*
- MAX_CACHE: 100
-
- /* WALK_BUTTON: LEFT or RIGHT
- /*
- /* This is the button used for "walking about"
- /*
- WALK_BUTTON: LEFT
-
- /* EXIT_COL: colour
- /*
- /* The colour of the text marking the exits
- /*
- EXIT_COL: 8
-
- /* OBJ_COL: colour
- /*
- /* The colour of the text marking the objects
- /*
- OBJ_COL: 1
-
- /* START_ROOM: roomnumber;entrance
- /*
- /* This is the room where the whole adventure starts
- /*
- START_ROOM: 18;1
-
- /* MAX_ROOM: rooms
- /*
- /* The highest room number used. Don't forget to alter this
- /* when higher numbered rooms are added to the game!!
- /*
- MAX_ROOM: 50
-
- /* MAX_SECTION: sections
- /*
- /* The highest section number used. Don't forget to alter this
- /* as sections are added to the game!
- /*
- MAX_SECTION: 15
-
- /* MAX_DACT: direct_room_actions
- /*
- /* The maximum number of direct room actions used anywhere in a
- /* room file. Keep an eye on this value as your adventure
- /* gets more complex...
- /*
- MAX_DACT: 50
-
- /* GLOBALOBJS: number
- /*
- /* Specifies the number of global objects. These are the
- /* objects which can be used throughout the whole adventure,
- /* and also all objects with which you can talk using dialogues
- /*
- GLOBALOBJS: 50
-
- /* SECTIONOBJS: number
- /*
- /* Specifies the number of objects that only exists when
- /* visiting a certain section.
- /*
- /* Note that all object flags, new
- /* names and states are lost when the section is exited,
- /* so any states must be saved and restored using
- /* room flags!!!
- /*
- SECTIONOBJS: 10
-
- /* ROOMOBJS: number
- /*
- /* Specifies the number of objects that only exist within one room.
- /* Note that no altered flags, states or names for these objects
- /* remain between visits to the room: Any state changes must
- /* be saved and stored using room flags!!!
- /*
- ROOMOBJS: 20
-
- /* N_GLOBALBOBS: number
- /*
- /* Specifies the number of global BOBs that can be
- /* used. Actual BOB numbers for these start with 11 and
- /* not 1, since BOB image bank slots 1-10 are reserved
- /* for system use.
- /*
- N_GLOBALBOBS: 60
-
- /* N_SECTIONBOBS: number
- /*
- /* Specifies the number of section BOB images. These are
- /* replaced each time the game enters a new section.
- /*
- N_SECTIONBOBS: 30
-
- /* N_ROOMBOBS: number
- /*
- /* Specifies the number of room BOB images. These are
- /* always replaced when entering a new room.
- /*
- N_ROOMBOBS: 70
-
- /* MSGFONT: fontname;fontsize
- /*
- /* This is the font used for text displayed in the scene area
- /* by SAY, THINK, RESP and TEXT commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- MSGFONT: hires-5a;8
-
- /* COMFONT: fontname;fontsize
- /*
- /* This is the font used for the text displayed in the
- /* command area.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- COMFONT: garnet;9
-
- /* TITLEFONT1: fontname;fontsize
- /*
- /* This font can be used by TYPE and other commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- TITLEFONT1: olaf;27
-
- /* TITLEFONT2: fontname;fontsize
- /*
- /* This font can be used by TYPE and other commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- TITLEFONT2: times;14
-
-
- /* CLPART: filename
- /*
- /* This is the screen from which all subsequent BOB images
- /* are grabbed. Once you've grabbed the graphics
- /* BOBS, another CLPART and further BOBS may be specified...
- /*
- CLPART: Olaf_Original.iff
-
- /* BOBS: no;startbob;x1;y1;w;h;x-offset;hotspot
- /*
- /* This statement grabs a single BOB image or a horizontally arranged
- /* sequence of BOBs.
- /*
- /* If the default setup of the command area is used, the following
- /* images must be loaded in using BOBS: statements:
- /*
- /* 3 - Up arrow for use in the command (and dialogue) area lists
- /* 4 - Down arrow -"-
- /* 5 - Blank plate used to erase up and down arrows (1 and 2)
- /* 6 - Cut-scene indicator (a movie camera in Olaf).
- /*
- /* INV_UP:, INV_DOWN:, DLG_UP:, DLG_DOWN:, and CUTSCENE_LAYOUT:
- /* statements can be used to
- /* specify other bob image numbers for these tasks if you so wish.
- /*
- /* Let's grab Olaf!!!
- /*
- BOBS: 10;11;1;1;31;47;32;0
- BOBS: 10;21;1;49;31;47;32;0
- BOBS: 10;31;1;97;31;47;32;0
- /* ...and the new mouse pointers
- CLPART: Olaf_cursors.iff
- BOBS: 1;59;23;16;17;17;0;0
- BOBS: 1;60;3;16;17;17;0;0
-
- CLPART: Olaf_Symbols.iff
- /* Inventory and dialogue arrows
- BOBS: 2;67;163;5;18;15;23;0
- BOBS: 2;69;163;21;18;15;23;0
- /* Cutscene indicator
- BOBS: 1;6;89;1;59;29;0;$11
- /* 41-49 Knife, feather, guide book, dictionary, net, ticket, envelope, map, parcel
- BOBS: 9;41;0;43;51;21;50;0
- /* 50-53 wrapping paper, lamp, empty, passport
- BOBS: 4;50;0;63;51;21;50;0
-
-
- /* INV_LAYOUT: x1;y1;x2;y2;rows;cols;ICONS|TEXT;VERTICAL|HORIZONTAL;
- /* ink/image_number;bg
- /*
- /* This statement defines the layout of the inventory in the
- /* command area. VERTICAL|HORIZONTAL determines the scroll
- /* direction. image_number is the image number of the icon
- /* used for vacant slots in the inventory list.
- /*
- INV_LAYOUT: 306;20;605;59;2;6;ICONS;VERTICAL;52;8
-
- /* INV_UP: x1;y1;w;h;image;image2
- /*
- /* This defines the area and image for the inventory scroll "up"
- /* (or "left") arrow.
- /*
- /* "image" is the image when the function is available.
- /* "image2" is the image when the function is unavailable.
- /*
- INV_UP: 283;24;17;14;68;67
-
- /* INV_DOWN: See "INV_UP:"
- /*
- INV_DOWN: 283;43;17;14;70;69
-
- /* DLG_UP: Same as "INV_UP:", but for the dialogue alternatives.
- /*
- DLG_UP: 8;6;17;14;68;67
-
- /* DLG_DOWN: See "DLG_UP:"
- /*
- DLG_DOWN: 8;43;17;14;70;69
-
- /* N_VERBS: number
- /*
- /* Sets thenumber of verbs, or commands if you will, available
- /* to the player. If anything else than 9, A VERB_TEXT and a
- /* VERB_ZONE statement must be included for each verb. (9 was
- /* the old GRAAL 1 default.)
- /*
- N_VERBS: 10
-
- /* VERB_TEXT: verb_no;text
- /*
- VERB_TEXT: 1;Give
-
- /* VERB_ZONE: verb_no;x1;y1;x2;y2
- /*
- /* This is the "clickable area" in the command area corresponding
- /* to the verb
- /*
- VERB_ZONE: 1;6;18;83;30
-
- VERB_TEXT: 2;Pick up
- VERB_ZONE: 2;90;18;167;30
- VERB_TEXT: 3;Use
- VERB_ZONE: 3;174;18;251;30
- VERB_TEXT: 4;Open
- VERB_ZONE: 4;6;33;83;45
- VERB_TEXT: 5;Talk to
- VERB_ZONE: 5;90;33;167;45
- VERB_TEXT: 6;Push
- VERB_ZONE: 6;174;33;250;45
- VERB_TEXT: 7;Close
- VERB_ZONE: 7;6;48;83;60
- VERB_TEXT: 8;Look at
- VERB_ZONE: 8;90;48;167;60
- VERB_TEXT: 9;Pull
- VERB_ZONE: 9;174;48;251;60
- VERB_TEXT: 10;$Score
- VERB_ZONE: 10;616;18;634;60
-
- /* LINE_LENGTH: characters
- /*
- /* This is the maximum number of characters on one line when
- /* text is displayed with SAY, THINK, etc. Line breaks are
- /* inserted automatically. You can control line breaks manually
- /* by providing \ characters in the string with shorter
- /* intervals than this number indicates.
- /*
- LINE_LENGTH: 34
-
- /* NORMAL_WAIT: waitlength
- /*
- /* The larger this value, the longer texts and sentences
- /* spoken remain on screen. Default is 100: If that is not
- /* enough, try other nice, round numbers like 200 or 400
- /*
- NORMAL_WAIT: 100
-
- /* SENTENCE_LAYOUT: x1;y1;x2;y2;ink;inkhi;bg
- /*
- /* This is the box in the command area where the sentence
- /* under construction is being shown.
- /*
- SENTENCE_LAYOUT: 6;2;634;14;3;11;8
-
- /* CUTSCENE_LAYOUT: x1;y1;x2;y2;bg;ulx;uly;image
- /*
- /* Specifies the properties of the cutscene indicator
- /* x1;y1;x2;y2 is the area to be blanked out
- /* bg is the colour to use in blanking
- /* ulx;uly is the place to paste the indicator
- /* image is the image of the indicator.
- /*
- CUTSCENE_LAYOUT: 4;17;253;61;8;101;26;6
-
- /* ARROW_CURSOR: image;hotspotx;hotspoty
- /*
- /* An alternative image for the arrow-shaped mouse pointer.
- /* Image must be lowres and 4 colours. Bot the x and y hotspot
- /* value must be set for the "sensitive point" of the cursor.
- /*
- ARROW_CURSOR: 60;0;0
-
- /* CROSSHAIR_CURSOR: image;hotspotx;hotspoty
- /*
- /* An alternative image for the "crosshair" mouse pointer.
- /* Image must be lowres and 4 colours. Bot the x and y hotspot
- /* value must be set for the "sensitive point" of the cursor.
- /*
- CROSSHAIR_CURSOR: 59;7;7
-
- /* CURSOR_PALETTE: RGB;RGB;RGB
- /*
- /* These are the three colour used for the mouse pointer in
- /* the command and dialogue area. In the scene area, the
- /* colours used are always colours 16,17, and 18 of the
- /* backdrop picture palette
- /*
- CURSOR_PALETTE: 811;999;DDD
-
- /* MODE_SWITCH: ROLL|INSTANT
- /*
- /* Sets the way the command area and dialogue area are switched
- /*
- MODE_SWITCH: ROLL
-
- /* AREA_SIZES: scene_height;command_height
- /*
- /* Sets the proportions of the split-screen display
- /*
- AREA_SIZES: 120;80
-
- /* COMMAND_AREA: file
- /*
- /* Specify the name of the picture file containing the graphics
- /* for the command area.
- /*
- COMMAND_AREA: Olafcomm.iff
-
- /* DLG_AREA: file
- /*
- /* Specify the name of the picture file containing the graphics
- /* for the dialogue input area.
- /*
- DLG_AREA: Olafdlg.iff
-
- /* RESOURCE: file
- /*
- /* This file is a resource bank used for
- /* dialogue boxes, requesters, etc.
- /*
- /* DEFAULT means GRAAL's built-in bank will be used - this
- /* produces gray-scale, "neutral" requesters.
- /*
- /* RESOURCE: DEFAULT
- RESOURCE: Wood.Rsb
-
-
- /* ===================================================================== */
- /* */
- /* Here is data describing the standard attributes of the main character */
- /* */
- /* ===================================================================== */
-
-
- /* CHARACTER_HEIGHT: pixels
- /*
- /* approximate or "average" height
- /*
- CHARACTER_HEIGHT: 40
-
- /* CHARACTER_WIDTH: pixels
- /*
- CHARACTER_WIDTH: 22
-
- /* CHARACTER_COL: colorindex
- /*
- /* Tells the colour of the dialogue text
- /*
- CHARACTER_COL: 9
-
- /* STILL_xxxxx: BOB image
- /*
- /* These are the character's standard poses when faces in
- /* the respective direction.
- /* ($8000+hex number makes the image flip horisontally.)
- /*
- STILL_RIGHT: 14
- STILL_LEFT: $800E
- STILL_BACK: 12
- STILL_FRONT: 11
-
- /* PAUSE_xxxxx: BOB image
- /*
- /* These are the character's standard poses when pausing
- /* between moves. (More "ready-for-action" poses than the
- /* STILL_xxxxxx images, although they may be the same if
- /* you like it that way.)
- /* ($8000+hex number makes the image flip horisontally.)
- /*
- PAUSE_RIGHT: 13
- PAUSE_LEFT: $800D
- PAUSE_BACK: 12
- PAUSE_FRONT: 11
-
- /* WALK_xxxxx: amalsequence
- /*
- /* These are the default animation sequences for moving in the
- /* four main directions.
- /*
- WALK_RIGHT: A 0,(16,6)(15,6)(14,6)(17,6)(18,6)(17,6)(14,6)(15,6)
- WALK_LEFT: A 0,($8010,6)($800F,6)($800E,6)($8011,6)($8012,6)($8011,6)($800E,6)($800F,6)
- WALK_AWAY: A 0,(29,8)(30,8)(31,8)(30,8)
- WALK_TOWARD: A 0,(26,8)(27,8)(28,8)(27,8)
-
- /* WALK_SPEED: characterspeed
- /*
- /* Adjust this number to match the animation speed, making the
- /* character actually walk around rather than "float about".
- /*
- WALK_SPEED: 1.2
-
- /* TALK_MAP: stillimage;animation
- /*
- /* The speech animation used depends upon the still image
- /* displayed before it begins. This keyword maps the animations
- /* to the still images. Max. 8 talk_maps may be specified.
- /* direction is one of FRONT, BACK, RIGHT or LEFT. If imagenumbers
- /* point to reverse images, the correct form is $FFFF8000+$imagenumber
- /*
- TALK_MAP: 11;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: 12;A 0,(21,24)(12,16)(22,36)(12,48)(22,18)(12,32)
- TALK_MAP: 13;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: $FFFF800D;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: 14;A 0,(23,18)(14,12)(23,12)(14,6)(23,12)(14,12)(23,6)(14,12)(24,6)(14,18)
- TALK_MAP: $FFFF800E;A 0,($8017,18)($800E,12)($8017,12)($800E,6)($8017,12)($800E,12)($8017,6)($800E,12)($8018,6)($800E,18)
-
- /* HANDLE_MAP: stillimage;handlelow;handlemid;handlehigh
- /*
- /* sets the animations for character handling things much the
- /* same way as TALK_MAP maps the speech animations.
- /*
- HANDLE_MAP: 11;A 1,(11,12)(36,1);A 1,(11,12)(34,1);A 1,(11,12)(35,1)
- HANDLE_MAP: 12;A 1,(12,12)(38,1);A 1,(12,12)(39,1);A 1,(12,12)(40,1)
- HANDLE_MAP: 14;A 1,(14,12)(32,1);A 1,(14,12)(33,1);A 1,(14,12)(37,1)
- HANDLE_MAP: $FFFF800E;A 1,($800E,12)($8020,1);A 1,($800E,12)($8021,1);A 1,($800E,12)($8025,1)
-
-
- /* ===================================================================== */
- /* */
- /* Objects, dialogues, etc. set up below */
- /* */
- /* ===================================================================== */
-
-
- /* OBJECT: no;name;startloc;visible;bob;startimg/anim;xpos;ypos;
- /* coffsx;coffsy;cstill;prep;pickable;animch;command;icon;handlepos;
- /* types;w1;w2;w3
- /*
- /* This is the data for an object.
- /* no = object number, used in coding so if you change this be sure
- /* to change or erase all code that goes with it...
- /* name = a string containing the (initial) inventory name for the object
- /* startloc = object starts in room number ...
- /* visible = is the object shown? NVIS = False, VIS = True
- /* startbob = starting bob number for displaying object
- /* startimg/startanim = bob image or amalsequence used for this object.
- /* LBOBs can be used, as long as these LBOB numbers
- /* are valid for each and every room where the
- /* object can appear!
- /* xpos;ypos = display object in this position.
- /* coffs;coffsy = offset of character relative object when handling
- /* cstill = still image of character when walking to object
- /* prep = object preposition. If not blank, "Use" will require 2nd object
- /* pickable = Can character pick this up? NPICK = False, PICK = True
- /* animch = Amal channel to use for this object
- /* command = This is the verb executed if the player right-clicks the
- /* object. 0 for no "quick command"
- /* icon = This is the image number for the icon used in the
- /* inventory display.
- /* handlepos: LOW, MID or HIGH determines animation for handling object.
- /* type = string of characters indicating object type.
- /* Standard types: M=male character, F=female character, G=group
- /* A=animal, C=container, D=Dead, V=Alive
- /* -=Abstract (unreachable, consisting of air, etc.)
- /* Other types: S=Stone, W=Wood, T=Metal, L=Liquid, - it's up to you.
- /* w1;w2;w3 = have to look these up in the grammar book. Anyway, deals with
- /* how you speak about the objects, as you can see below.
- /*
- /* OBJECT: no;name;startloc;visible;bob;startimg/anim;xpos;ypos;
- /* coffsx;coffsy;cstill;prep;pickable;animch;command;icon;handlepos;
- /* types;w1;w2;w3
- /*
- /* Object 0 is a dummy object - icon image used for "empty places" in the
- /* inventory display.
- /*
- OBJECT: 1;passport;0;NVIS;50;0;0;0;0;0;0;with;PICK;0 ;8;53;LOW;WD;a;this;it
- OBJECT: 2;pawnshop\owner;2;NVIS;37;RBOB30;396;84;14;-10;$800E; ;NPICK;7;5;0;MID;MV;a;this;him
- OBJECT: 3;guard;6;VIS;58;RBOB3;183;102;20;0;$800E; ;NPICK;7;5;0;MID;MV;a;this;him
- OBJECT: 5;bearded\man;1;VIS;55;A 0,(RBOB9,36)(RBOB8,48)(RBOB9,24)(RBOB8,36)(RBOB9,36)(RBOB8,48)(RBOB9,24)(RBOB8,36)(RBOB9,64)(RBOB7,100);150;94;-20;20;14; ;NPICK;8;5;0;MID;MV;a;this;him
- OBJECT: 7;Ali;4;VIS;59;A 1,(RBOB2,6);123;117;15;0;$800E; ;NPICK;8;5;0;MID;MV; ; ;him
- OBJECT: 9;nomad;2;VIS;59;A 0,(RBOB1,6)(RBOB2,12)(RBOB1,6)(RBOB2,200);55;108;20;1;$800E; ;NPICK;9;5;0;MID;MV;a;this;him
- OBJECT: 11;camel;2;VIS;57;A 0,(RBOB7,200)(RBOB9,100)(RBOB7,400)(RBOB10,100)(RBOB9,200);87;110;32;2;$800E; ;NPICK;8;8;0;MID;AV;a;this;it
- OBJECT: 14;fishnet;3;VIS;58;RBOB2;20;81;10;3;$800E;with;PICK;0;8;45;MID;D;a;this;it
- OBJECT: 15;captain;3;VIS;57;PTRN 1;244;58;30;10;$800E; ;NPICK;9;5;0;MID;MV;a;this;him
- OBJECT: 21;feather;3;VIS;53;RBOB29;147;74;15;0;$800E;with;PICK;0;8;42;LOW;D;a;this;it
- OBJECT: 24;small knife;0;NVIS;0;99;0;0;0;0;0;on;PICK;0;8;41;MID;TD;a;this;it
- OBJECT: 27;parcel;0;NVIS;0;0;0;0;0;0;0; ;PICK;0;8;49;MID;WD;a;this;it
- OBJECT: 28;wrapping\paper;0;NVIS;0;0;0;0;0;0;0;with;PICK;0;8;50;MID;WD;a piece of;this;it
- OBJECT: 30;dictionary;0;NVIS;0;0;0;0;0;0;0;with;PICK;0;8;44;MID;WD;a;this;it
-
- /* DLG: no;dlgobj;dlgcol;dlgoffs;dlganim
- /*
- /* This sets up the characters and animations used
- /* by the various dialogue partners. You MUST one DLG statement
- /* for each dialogue there is, but you can actually use any of them
- /* in any of the RESP statements of any dialogue! (Flexible, but
- /* not really that useful.)
- /*
- /* dlgcol = the colour index of the dialogue text
- /* dlgoffs = dialogue text offset from character hotspot
- /*
- /* 1 is bartender
- DLG: 1;5;11;-20;A 0,(RBOB4,12)(RBOB6,24)(RBOB4,18)(RBOB6,6)(RBOB8,12)(RBOB4,18)(RBOB9,20)(RBOB8,12)(RBOB9,30)
- /* 2 is nomad
- DLG: 2;9;11;-26;A 0,(RBOB4,24)(RBOB3,18)(RBOB4,30)(RBOB3,24)(RBOB5,6)
- /* 3 is captain
- DLG: 3;15;12;-20;A 0,(RBOB4,12)(RBOB22,24)(RBOB4,48)(RBOB22,36)(RBOB4,18)(RBOB23,12)
- /* 4 is Ali Harrod
- DLG: 4;7;11;-30;A 0,(RBOB3,24)(RBOB2,24)(RBOB3,12)(RBOB2,18)(RBOB4,24)
- /* 5 is pawn shop keeper
- DLG: 5;2;11;-20;A 0,(RBOB30,18)(RBOB31,12)(RBOB30,18)(RBOB31,16)(RBOB32,12)
- /* 6 is guard in mountain pass
- DLG: 6;3;11;-40;A 0,(RBOB1,36)(RBOB2,28)(RBOB1,22)(RBOB2,18)(RBOB1,48)(RBOB2,24)(RBOB3,64)
-
-
-
- /* ===================================================================== */
- /* */
- /* Here come the global actions, working everywhere */
- /* */
- /* ===================================================================== */
-
-
- /* ACTION: verbno;condition;...;command;...
-
- /*
- /* ACTION -2 - Things to do after a "load game"
- /* --------------------------------------------
- /* Check if Olaf is small (This code is only duplicated once, so i put it
- /* right in the ACTION: statement.)
- /*
- ACTION: -2;IFRF 0,1=1;CLPART Olaf_Bagdad.iff;BOBS 10,11,0,0,16,20,15,0;BOBS 10,21,0,25,16,20,15,0;BOBS 10,31,0,50,16,20,15,0;CLPART OFF;SHOW 0, , , ;EXIT
- /* Check if Olaf is big (This code is used in more places, and therefore
- /* it was put in an "unskippable" cutscene.)
- /*
- ACTION: -2;IFRF 0,1=0;CUTSCENE 17,H;EXIT
-
- /*
- /* Action 1 - Give
- /* ---------------
- /*
- ACTION: 1;IFPICK;SAY I don't see the point.;EXIT
- ACTION: 1;SAY I can't do that.;EXIT
-
- /*
- /* Action 2- Pick up
- /* -----------------
- /*
- ACTION: 2;IFCARR;SAY I already have it!;EXIT
- ACTION: 2;IFPICK;MOBJ;HANDLE;W 12;PICK;HANDLE -1;EXIT
- ACTION: 2;IFTYPE F|M;SAY You can't really mean that!;EXIT
- ACTION: 2;IFTYPE -;SAY That was rather far-fetched, wasn't it?;EXIT
- ACTION: 2;SAY I can't pick that up.|Sorry, that is not possible.;EXIT
-
- /*
- /* Action 3 - Use
- /* --------------
- /*
- ACTION: 3;IFOBJ 24;IFOBJ2 14;SAY Why destroy a good net?;EXIT
- ACTION: 3;IFOBJ 24;IFTYPE2 W;SAY I can't very well go around carving my initials in everything!;EXIT
- ACTION: 3;IFOBJ 24;IFTYPE2 T;SAY I think that would hurt the knife more than the #OBJ2!;EXIT
- ACTION: 3;IFOBJ 24;IFTYPE2 A;SAY I am not a vivisectionist!;EXIT
- ACTION: 3;IFOBJ 24;IFTYPE2 V;SAY That would be against the law - and also, very impolite.;EXIT
- ACTION: 3;IFOBJ 24;SAY I'm afraid I would only cut myself.;EXIT
- ACTION: 3;IFOBJ 28;SAY No, I don't feel the need to wrap that up.;EXIT
- ACTION: 3;IFOBJ 30;IFTYPE2 A;SAY Sorry, but animal language is not included in this volume!;EXIT
- ACTION: 3;IFOBJ 30;IFTYPE2 V;SAY I am sure we will get along without it in this case.;EXIT
- ACTION: 3;IFTYPE -;SAY Get serious!;EXIT
- ACTION: 3;IFTYPE M|F;SAY You can't just use people like that!;EXIT
- ACTION: 3;SAY That doesn't work.|I don't know what you are getting at.|I can't use it like that.;EXIT
-
- /*
- /* Action 4 - Open
- /* ---------------
- /*
- ACTION: 4;IFOBJ 30;SAY It's no good if I don't use it with some foreign langauge;EXIT
- ACTION: 4;IFTYPE M|F|A;SAY Get real!;EXIT
- ACTION: 4;SAY I can't open #W13.|That is impossible.;EXIT
-
- /*
- /* Action 5 - Talk to
- /* ------------------
- /*
- ACTION: 5:IFTYPE D;IFTYPE G;SAY I could, but #OBJ1 make a lousy audience!;EXIT
- ACTION: 5;IFTYPE G;SAY I'd rather not disturb them.;EXIT
- ACTION: 5;IFTYPE A;SAY If I could talk to the animals... I'd be in a musical, and not in this stupid adventure!;EXIT
- ACTION: 5;IFTYPE F;SAY I have other things to do besides chatting up every woman I see!;EXIT
- ACTION: 5;IFTYPE M;SAY I sense some communication problems here - let's skip it!;EXIT
- ACTION: 5;SAY It does not seem very talkative.|I would be better off talking to a wall than a #OBJ1.;EXIT
-
- /*
- /* Action 6 - Push
- /* ---------------
- /*
- ACTION: 6;IFTYPE -;SAY You seem slightly delirious again!;EXIT
- ACTION: 6;IFTYPE M|F;SAY You can't go around pushing people like that!;EXIT
- ACTION: 6;IFTYPE A;SAY It might push back - or something worse.;EXIT
- ACTION: 6;SAY That doesn't seem like a good idea to me.|There is no use in pushing that.|Don't push it!;EXIT
-
- /*
- /* Action 7 - Close
- /* ----------------
- /*
- ACTION: 7;IFTYPE M;SAY You mean shut him up? I don't think so...;EXIT
- ACTION: 7;IFTYPE F|A;SAY I can't do that.;EXIT
- ACTION: 7;SAY I can't close #W13 #OBJ1.|That can't be done.;EXIT
-
- /*
- /* Action 8 - Look at
- /* ------------------
- /*
- ACTION: 8;MOBJ
- ACTION: 8;IFOBJ 14;SAY It smells a bit, but it's a good, strong net.;EXIT
- ACTION: 8;IFOBJ 21;SAY It's an ordinary seagull's feather.;EXIT
- ACTION: 8;IFOBJ 24;SAY It is small, but Swedish blades bite, no matter what size!;EXIT
- ACTION: 8;IFOBJ 27;IFOF 1=1;SAY It is "The Hitchhiker's Guide to the Middle and Far East";EXIT
- ACTION: 8;IFOBJ 30;SAY "Anglo/Saxon/Hindi/Arabic/Nordic Dictionary and Phrase Book".;EXIT
- ACTION: 8;SAY I don't see anything special.|Just #W11 #OBJ1!|Nothing special to report.;EXIT
-
- /*
- /* Action 9 - Pull
- /* ---------------
- /*
- ACTION: 9;IFTYPE G;SAY What do you mean - pull their legs??;EXIT
- ACTION: 9;IFTYPE M;SAY What do you mean - pull his leg??;EXIT
- ACTION: 9;IFTYPE F;SAY What do you mean - pull her hair??;EXIT
- ACTION: 9;IFTYPE A;SAY No, it might pull back - or something worse.;EXIT
- ACTION: 9;SAY That doesn't seem like a good idea to me.|I really don't think I can pull that off...!|I'd rather pull myself together first.;EXIT
-
- /*
- /* Action 10 - Score
- /* -----------------
- /*
- ACTION: 10;TEXT -1,0,11,You have scored #R#0#20# points so far.;EXIT
- /* End of boot file - There must be some comments here, otherwise the last
- /* command is not regarded.
-